Summary

Pull means clients ask for updates. Push means the server sends updates when they happen.

Interview Points

  • Pull is simple, cacheable, and client-controlled.
  • Push reduces freshness latency but requires long-lived connections or delivery infrastructure.
  • Polling, long polling, SSE, WebSockets, and webhooks are common options.
  • Push needs backpressure, reconnection, ordering, and authorization handling.
  • Choose based on freshness, scale, and client capabilities.

2-3 Minute Interview Script

“In a pull model, clients request data when they need it. This is simple, cache-friendly, and easy to reason about. In a push model, the server sends updates as they happen, which improves freshness but adds connection and delivery complexity.

For example, a news feed can often use pull with caching and pagination. A collaborative editor, chat app, or live dashboard may need push through WebSockets, SSE, or a pub-sub system.

The tradeoff is operational. Push requires tracking connections, reconnecting clients, handling slow consumers, and managing authorization over time.

Interview answer: use pull when freshness requirements are relaxed; use push when low-latency updates are part of the product experience.”

Follow-Ups

  • When is polling acceptable?
  • How do you handle slow push consumers?